Challenge #29: Alteryx ’16 Grand Prix ~野球チームの統計~ – Alteryx Weekly Challenge
こんにちは。Alteryxサポートエンジニアとして勉強中のスズです。
当エントリは『Alteryx Weekly Challenge:Intermediate Level Advent Calendar 2018』の5日目です。
- >Alteryx Weekly Challenge:Intermediate Level Advent Calendar 2018 - Qiita
- Alteryx Weekly Challenge:Intermediate Level Advent Calendar 2018 | シリーズ | Developers.IO
『Alteryx Weekly Challenge:Intermediate Level Advent Calendar 2018』では、Alteryx Communityで公開されているWeekly ChallengeのIntermediate Levelにひたすら1人で挑戦していきます。
今回は野球チームの統計に挑戦します。
動作環境
当エントリの執筆には、以下の環境を利用しています。
- Windows 10 Pro
- Alteryx Designer 2018.4.3.54046 英語版
Challenge #29: Alteryx '16 Grand Prix
お題
今回挑戦するお題はこちら。
「Input」側にはデータが3つ用意されています。1つ目のデータには各チームのプレイヤーのデータがあります。
2つ目のデータには打者のデータがあります。
3つ目のデータには投手のデータがあります。
「Output」側のデータはこちら。3つのデータを1つにまとめ、「Hitter Rank」「Pitcher Rank」列を作成しています。
解答の概要
今回作成するワーフクローは以下の通りです。
- Dynamic Rename、Formulaツールで打者と投手のデータの列を整備
- Union、Data Cleaningツールで打者と投手のデータを結合、「Player」列のデータを修正
- Join、Sortツールで2つのデータを結合し並べ替え
解答の詳細
2つ目と3つ目のデータの処理を行います。Dynamic Renameツール(Developer -> Dynamic Rename)を使用して、各列の初めにあるデータを列の名前に設定します。Rename Mode に Take Field Names from First Row of Data
を使用します。
Formulaツール(Preparation -> Formula)を使用して、「Hitter Rank」「Pitcher Rank」列を作成します。式に「Replace([Rank], "#", "")」を設定して「Rank」列から不要な文字「#」を取り除いて出力します。
Unionツール(Join -> Union)を使用して、2つ目と3つ目のデータを結合します。データの結合の条件として、Auto Config by Name
を指定しています。
Data Cleaningツール(Preparation -> Data Cleaning)を使用して、「Player」列の初めにあるスペースを削除します。また、1つ目のデータと結合するため、名前を全て大文字に変更します。
以下の通り設定しています。
- Select Fields to Cleans: Player
- Remove Unwanted Characters: Leading and Trailing Whitespace
- Modify Case: Upper Case
Joinツール(Join -> Join)を使用して、Data Cleaningツールで出力したデータと1つ目のデータと結合します。Join by Specific Fields を使用して「Player」列でデータを結合します。また、不要な列の削除や列の並べ替えを行っています。
Sortツール(Preparation -> Sort)を使用してデータの並べ替えを行います。
並べ替えの条件は以下の通りです。
- Name: Round、Order: Ascending
- Name: Overall_Pick、Order: Ascending
ワークフローを実行して結果を確認。完成です。
補足
「Output」側のデータには「2015 Team Rank」という列がありますが、今回作成したワークフローには「2015 Team Rank」列はありません。模範解答として提供されているワークフローにおいても「2015 Team Rank」列がありませんでしたので、「2015 Team Rank」列以外が一致しているので完成としています。
最後に
今回はWeekly ChallengeのChallenge #29: Alteryx '16 Grand Prix (Race1, L1)に挑戦しました。
明日もお楽しみに!
サンプルワークフローのご案内
クラスメソッドでご契約のユーザー様向けに、当ブログでご紹介したワークフローを専用ポータルにて公開しております。当エントリでご紹介したワークフローも公開予定ですので、ご参考にしていただきますと幸いです。
Alteryxの導入なら、クラスメソッドにおまかせください
日本初のAlteryxビジネスパートナーであるクラスメソッドが、Alteryxの導入から活用方法までサポートします。14日間の無料トライアルも実施中ですので、お気軽にご相談ください。